#ifndef BM_CREATURE_H
#define BM_CREATURE_H
#include <SDL/SDL.h>
#include "libraries/BM_model.h"
#include "libraries/BM_level.h"
#define XYZ 3
#define QUAD_PRISM 8
#define DIR_UP 0x10 // vertical = 1
#define DIR_DOWN 0x20 // vertical = 2
#define DIR_RIGHT 0x01 // vertical = 3
#define DIR_LEFT 0x02 // vertical = 4
#define DIR_FRONT 0x04 // vertical = 5
#define DIR_BACK 0x08 // vertical = 6
/*/////////////////
[1] top left front
[2]  bottom left front
[3]bottom right front
[4]top right front
[5] top left back
[6]bottom left back
[7]bottom right back
[8] top right back
*//////////////////

class BMCreature{
	protected:
		float coor[QUAD_PRISM][XYZ];	
		int health;
		BMModel* model;
		float x,y,z;
		float rotx, roty, rotz;
		char direction;
		float jump_dis;
	public:
		BMCreature();
		void move(float mx,float my, float mz);
		void rotate(float rx, float ry, float rz);
		int levelCollision(BMLevel *level);
		void setHealth(int h);
		int getHealth();
		float getX();
		float getY();
		float getZ();
		float getRotX();
		float getRotY();
		float getRotZ();
		void getCoor(int lessthaneight, float *cx, float *cy, float *cz);
		void setCoor(int lessthaneight, float cx, float cy, float cz);
		void resetDirection();
};

#endif



